#include "mainwindow.h"
#include <QApplication>

MainWindow::MainWindow(QWidget *parent)
    : QMainWindow(parent)

{
    // ******** UI初始化 ******** //
    initWinUI(); // 主窗口UI
    createWinToolsUI();  // 创建"任务管理UI"
    createWinTabsUI(); // 任务标签UI
    createAddDialogUI(); // 下新增任务UI

    // ******** 信号&槽 ******** //
    connect(toolBarUI->exitActionUI, &QAction::triggered, this, &MainWindow::exit); // 按 退出，关闭软件
    connect(toolBarUI->newTaskActionUI, &QAction::triggered, this, &MainWindow::newTask); // 按 + ，弹出新建任务对话框
    connect(newTaskdiaUI, &NewTaskDialog::signalCreateNewTask, fTabUI, &filesTabUI::slotCreateNewTask); // 确定添加下载

    QString filename = "C:\\Users\\CHD\\Desktop\\download.txt";
    QFile file(filename);
    if (file.open(QIODevice::ReadOnly | QIODevice::Text)) {
        if (file.size() == 0) {
            // 文件为空
            qDebug() << "文件为空";
        } else {
            // 文件不为空
            fTabUI->restoreTask();
            qDebug() << "文件不为空";
        }

        file.close();
    } else {
        qDebug() << "无法打开文件" << filename;
    }

}

MainWindow::~MainWindow()
{
    toolBarUI->deleteLater();
    newTaskdiaUI->deleteLater();
}

void MainWindow::initWinUI()
{
    // 主窗口初始化
    setWindowTitle(tr("CHD_Downloader"));
    //setWindowIcon(QIcon(tr(":/images/SeeWo.png")));
    resize(800, 600);
}
void MainWindow::createAddDialogUI()
{
    // 创建"新增下载任务对话框"
    newTaskdiaUI = new NewTaskDialog(this);
}

void MainWindow::createWinToolsUI()
{
    // 创建"任务管理UI"
    toolBarUI = new toolsbarUI(this);
    addToolBar(toolBarUI);
}

void MainWindow::createWinTabsUI()
{
    // 创建"任务标签" (正在下载、已完成、回收站)
    fTabUI = new filesTabUI(this);
    this->setCentralWidget(fTabUI);
}

//Open "新增下载任务对话框"
void MainWindow::newTask()
{
    newTaskdiaUI->open();
}


//退出
void MainWindow::exit()
{
      qApp->quit();
}
